Re: INNER JOINS in sql-select.html - Mailing list pgsql-docs

From Henry B. Hotz
Subject Re: INNER JOINS in sql-select.html
Date
Msg-id p05210602bbcc8fb0d68c@[137.78.212.225]
Whole thread Raw
In response to Re: INNER JOINS in sql-select.html  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: INNER JOINS in sql-select.html
List pgsql-docs
At 5:56 PM -0500 10/30/03, Tom Lane wrote:
>Stefan Weiss <spaceman-4b9f8-20030703@ausgehaucht.sensenmann.at> writes:
>>  From <doc/html/sql-select.html>:
>  > | A CROSS JOIN or INNER JOIN is a simple Cartesian product, the same
>>  | as you get from listing the two items at the top level of FROM. CROSS
>>  | JOIN is equivalent to INNER JOIN ON (TRUE), that is, no rows are
>>  | removed by qualification.
>
>>  I thought that by using the second form, you would be able to do
>>  'explicit' joins, effectivly telling the planner in which order to
>>  join multiple tables (in case you have to join 10+ tables)?
>
>They are semantically equivalent, but not necessarily the same from a
>performance point of view.  The potential performance issues are covered
>elsewhere; I think it would just obfuscate matters to try to include
>that topic here.

You can imply the issue without obfuscating things.  How about:

>A CROSS JOIN or INNER JOIN is a simple Cartesian product, the same
>as you get from listing the two items at the top level of FROM.
>CROSS JOIN yields the same results as INNER JOIN ON (TRUE), that is,
>no rows are removed by qualification.

--
The opinions expressed in this message are mine,
not those of Caltech, JPL, NASA, or the US Government.
Henry.B.Hotz@jpl.nasa.gov, or hbhotz@oxy.edu

pgsql-docs by date:

Previous
From: Josh Berkus
Date:
Subject: Re: Section "Routine Reindexing"
Next
From: Tom Lane
Date:
Subject: Re: INNER JOINS in sql-select.html